
The corresponding
class
bodies of the derived counters implement
only the new or the
redeclared
methods:
type up_down_counter is class body
for signal, variable
procedure count_down is
begin
-- use of inherited
-- method "load"
load (value - 1);
end;
end for;
end class body up_down_counter;
type address_counter is class body
for signal, variable
procedure count_up is
begin
load (value + 4);
end;
end for;
(*)
end class body address_counter;
|
 |

Because the redeclaration of the method count_up only hides the
inherited method count_up of the parent class counter,
an additional method count_up_2 may look like this:
(*)
procedure count_up_2 is
begin
for i in 0 to 3 loop
-- invocation of hidden
-- count_up method.
counter.count_up;
end loop;
end count_up;
In this example the statement counter.count_up; uses a
qualified notation to get access to the hidden method count_up
of class counter. The next page will explain this
more explicitly.
|